A | B | C | D | E | F | G | H | CH | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
A Service Location Protocol (SLP, srvloc) egy szolgáltatásfelismerési protokoll, amellyel hálózatba kapcsolt számítógépek és egyéb eszközök szolgáltatásokat (idegen szóval service-eket) találhatnak meg. Az SLP-t úgy tervezték meg, hogy kis- és nagyméretű hálózatokban egyaránt használható legyen, azaz méretezhető legyen. Az SLP teljes meghatározását az RFC 2608 dokumentum tartalmazza.
Áttekintés
Az SLP-t hálózati eszközök használják szolgáltatások meghirdetésére. Minden szolgáltatásnak rendelkeznie kell egy URL-lel, ami egyértelműen azonosítja azt. Az URL mellett rendelkezhet még tetszőleges számú név/érték párral, melyeket attribútumoknak hívunk. Minden eszköznek legalább egy scope-ban kell szerepelnie. A scope-ok egyszerű sztringek, melyeket az eszközök csoportosítására használnak. A scope fogalom hasonlatos a névtér fogalomhoz, mert a láthatóságot definiálja. Egy adott scope-hoz tartozó eszköz számára nem láthatóak a más scope-ban definiált szolgáltatások.
Például egy nyomtató URL-je lehet a következő:
service:printer:lpr://myprinter/myqueue
Ez az URL például egy myprinter nevű nyomtató myqueue nevű nyomtatási sorát jelöli. Az URL-ből az is látszik, hogy a nyomtató az LPR protokollt használja. Vegyük észre, hogy az URL a speciális „service:” prefixumot használja. Ez nem kötelező, de segítségével kereshetünk adott típusú szolgáltatásokra, például nyomtatókra anélkül, hogy a konkrét protokollt meghatároznánk. Az első három komponenst (service:printer:lpr) hívják szolgáltatástípusnak, vagy idegen szóval service type-nak. Az első két komponenst (service:printer) hívják absztrakt szolgáltatástípusnak is, angolul abstract service type-nak. Azonban nem minden URL kezdődik a „service:” prefixummal, más URL-eknél, mint például a http://www.wikipedia.org esetében maga a sémanév a szolgáltatástípus.
A nyomtató attribútumai például a következők lehetnek. Ez a példa a szabvány SLP szintaxist követi, bár az olvashatóság kedvéért soremelésekkel bővítettük:
(printer-name=Hugo), (printer-natural-language-configured=en-us), (printer-location=In my home office), (printer-document-format-supported=application/postscript), (printer-color-supported=false), (printer-compression-supported=deflate,gzip)
A másik fontos fogalom a service template, ami az URL szintaxis és az attribútumok formális leírása. A service template definícióját az RFC 2609 dokumentum tartalmazza.
Az SLP-ben többféle lekérdezéstípus létezik:
- Lekérdezhető egy adott szolgáltatástípushoz vagy absztrakt szolgáltatástípushoz tartozó összes szolgáltatás.
- A lekérdezésben szűrhetünk attribútumokra az LDAP szintaxist használva.
- Az URL alapján lekérdezhetjük egy adott szolgáltatás attribútumait.
- Lekérhető az összes szolgáltatástípus listája.
- Lekérhető az összes létező scope listája.
Szerepek
Az SLP három különböző szerepet definiál. Egy eszköz több szereppel is rendelkezhet, akár mind a hárommal is.
- User Agent (UA) olyan eszköz, amely szolgáltatásokat keres
- Service Agent (SA) olyan eszköz, amely egy vagy több szolgáltatást tesz közzé
- Directory Agent (DA) olyan eszköz, amely szolgáltatások köztes tárolását (cache-elését) valósítja meg. Az ilyen eszközöket nagyobb hálózatokban használják az adatforgalom csökkentésére, s ezáltal a rendszer skálázhatóvá tételére. A DA-k használata opcionális, de ha van jelen a rendszerben DA, akkor az UA-k és az SA-k csak azokon keresztül kommunikálhatnak.
Manapság a legtöbb implementáció démon, és egyaránt képes az UA és az SA szerepekre, továbbá gyakori, hogy a démon konfigurálható DA szerepre is.
Protokoll-részletek
Az eszközöknek a 427-es porton kell figyelniük UDP csomagokra. Az SA-knak és a DA-knak ezen felül TCP csomagokra is figyelniük kell ugyanazon a porton. Az SLP sűrűn használja a multicastolást, különösen olyan eszközök esetében, amelyek frissen kerültek a rendszerbe és más eszközöket keresnek.
Az SLP működése nagy mértékben függ attól, hogy van-e jelen DA. Ha új kliens kerül a rendszerbe, akkor először kiküld egy multicast üzenetet, hogy DA-t keressen. Ha nem kap választ, akkor feltételezi, hogy nincs a rendszerben DA. Ha egy SA rátalál egy DA-ra, akkor regisztrálnia kell minden saját szolgáltatását a szóban forgó DA-nál. Amennyiben egy szolgáltatás megszűnik, akkor arról értesítenie kell a DA-t.
Ha nincs jelen DA, akkor az UA kiküld egy multicast UDP csomagot, amely a lekérdezést tartalmazza. Minden olyan SA, amely rendelkezik válasszal UDP csomag formájában válaszol az UA-nak. Ha a válasz nem fér bele egy UDP csomagba, akkor a csomag overflown jelölést kap, és ekkor az UA küldhet TCP kérést az SA-nak, hogy tetszőleges méretű választ kaphasson.
Ha van jelen DA, akkor az SA küld egy vagy UDP vagy TCP lekérdezést a DA-nak. Mivel minden SA köteles minden szolgáltatását regisztrálni a DA-nál, a DA rendelkezik a válasszal és simán elküldi azt az UA-nak.
Biztonság
Az SLP tartalmaz nyilvános kulcsú titkosítási mechanizmust, de ezt többnyire nem használják a következők miatt:
- Ahhoz hogy a hitelesítés működjön, a szolgáltatók nyilvános kulcsait előzetesen telepíteni kell minden UA-ra, az SLP célja pedig éppen az, hogy az eszközök előzetes konfigurálás nélkül képesek legyenek megtalálni a szolgáltatásokat.
- Az URL mindenképp tartalmaz hosztnevet vagy IP címet, és egy lokális hálózatban szinte kivédhetetlen a DNS nevek illetve IP címek meghamisítása. Ezért nem elég csak az URL hitelességét garantálni, hiszen egy adott kérésre bármely eszköz reagálhat.
- Mivel a címek hamisíthatóak, az eszközök hitelességét egy más szinten kell ellenőrizni. Például az alkalmazási rétegben (lásd. SSL).
Alkalmazása
- gyakran használják nyomtatók megkeresésére, több nyomtatási rendszer is támogatja, köztük a CUPS
- hálózati nyomtatók is támogatják, hogy üzembe helyezés után azonnal megtalálhatók legyenek a hálózaton
- az ACN protokoll különböző multimédiás eszközök, mint például intelligens fényszórók megtalálására használja
- a Mac OS és a Mac OS X a 10.1-es verzióig SLP-t használt a fájlmegosztások és egyéb szolgáltatások keresésére. Az újabb Mac OS X-verziók, a 10.2-től fölfelé inkább a Zeroconfot használják az új funkciókhoz.
- a Novell NetWare kliensek tisztán IP-alapú hálózatban SLP-vel keresik meg a szervereket
- a SUSE Linux 9.1-es változatától kezdve SLP-t használ egyes szolgáltatások elérésére
- a DMTF szabványosította a WBEM szolgáltatások elérését SLP-n keresztül
- az SNIA az SLP szabványt tette kötelezővé az Storage Management Initiative – Specificationban (tárolóeszközök szabványa).
A lap szövege Creative Commons Nevezd meg! – Így add tovább! 3.0 licenc alatt van; egyes esetekben más módon is felhasználható. Részletekért lásd a felhasználási feltételeket.
Advanced Message Queuing Protocol
Alkalmazási réteg
ARP
Avalanche
BitTorrent
Bootstrap Protocol
CAN-busz
Carrier Sense Multiple Access with Collision Detection
Common Address Redundancy Protocol
Csomagszűrés
EDonkey hálózat
File Transfer Protocol
Frame Relay
Fully qualified domain name
Hálózati idő protokoll
Handshaking
Helium Network
IEEE 802.3
Iptables
Locator/Identifier Separation Protocol
MachineKey
Microcom Networking Protocol
Multiprotocol Label Switching
NetBEUI
NetBIOS
NNTP
Power over Ethernet
Protokoll (informatika)
RARP
Referer
Service Location Protocol
Session Initiation Protocol
Signalling Connection Control Part
Simple Network Management Protocol
Simple Service Discovery Protocol
Stellar (fizetési hálózat)
TCP/IP
Telnet
Universal Plug and Play
User Datagram Protocol
Viszonyréteg
Web Services for Remote Portlets
X-Forwarded-For
Xerox Hálózati Rendszerek
A lap szövege Creative Commons Nevezd meg! – Így add tovább! 3.0 licenc alatt van; egyes esetekben más módon is felhasználható. Részletekért lásd a felhasználási feltételeket.